Test automation is, for example, the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions. Test automation often involves automating a manual process that is already in place and uses a formalized testing process.